package com.baitengsoft.patentapimonitor.api.service;

import com.baitengsoft.patentapimonitor.api.model.*;
import com.baitengsoft.patentapimonitor.api.model.dto.*;
import com.baitengsoft.patentapimonitor.common.utils.Res;

import javax.servlet.http.HttpServletResponse;
import java.util.List;

/**
 * @author Chen 2018/1/30
 */
public interface WebExcelExportService {

    List<WebAnalysisExportDto> getWebAnalysisExportDto(List<RptPatentDataAreaInfo> infos);

    List<WebYearStatisticInfoDto> getWebYearStatisticInfoDto(List<WebYearStatisticInfo> infos);

    List<WebAreaStatisticInfoDto> getWebAreaStatisticInfoDto(List<WebAreaStatisticInfo> infos);

    List<WebIPCAnalysisInfoDto> getWebIPCAnalysisInfoDto(List<WebIPCAnalysisInfo> infos);

    List<WebInventorAnalysisInfoDto> getWebInventorAnalysisInfoDto(List<WebInventorAnalysisInfo> infos);

    List<WebAgencyAnalysisInfoDto> getWebAgencyAnalysisInfoDto(List<WebAgencyAnalysisInfo> infos);

    List<WebApplicantInfoDto> getWebApplicantInfoDto(List<WebApplicantInfo> infos);

    List<WebApplicantIndustryInfoDto> getWebApplicantIndustryInfoDto(List<WebApplicantIndustryInfo> infos);

    List<WebApplicantTypeInfoDto> getWebApplicantTypeInfoDto(List<WebApplicantTypeInfo> infos);

    List<WebPacPatentInfoDto> getWebPacPatentInfoDto(List<PacPatentInfo> items);

    List<WebMonAnalysisInfoDto> getWebMonAnalysisInfoDto(List<WebMonAnalysisInfo> infos);

    List<WebMonInvalidAnalysisInfoDto> getWebMonInvalidAnalysisInfoDto(List<WebMonInvalidAnalysisInfo> infos);

    List<WebExpiryNoticeInfoDto> getWebExpiryNoticeInfoDto(List<WebExpiryNoticeInfo> items);

    List<WebApplyChangeInfoDto> getWebApplyChangeInfoDto(List<WebApplyChangeInfo> infos);

    List<WebInvalidAnalysisInfoDto> getWebInvalidAnalysisInfoDto(List<WebInvalidAnalysisInfo> infos);

    List<WebPacApplicantInfoDto> getWebPacApplicantInfoDto(List<PacApplicantInfo> infos);

    /**
     * 上传统计报表到文件服务器后返回文件标识
     */
    String exportAnalysisReport(Integer platformId) throws Exception;
}
